package com.share.payment.config;

import com.github.binarywang.wxpay.config.WxPayConfig;
import com.github.binarywang.wxpay.service.WxPayService;
import com.github.binarywang.wxpay.service.impl.WxPayServiceImpl;
import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

/**
 * @author ZhouShuang
 * @version 17
 * @Title
 * @date 2025/10/25 上午8:56
 */
@Configuration
@ConfigurationProperties(prefix = "wx.v2pay") //读取节点
@Data
public class WxPayV2Properties {


    /**
     * 微信小程序appid
     */
    private String appid;
    /**
     * 商户号
     */
    public String merchantId;
    /**
     * 商户API私钥路径
     */
//    public String privateKeyPath;
    /**
     * 商户证书序列号
     */
//    public String merchantSerialNumber;
    /**
     * 商户APIV2密钥
     */
    public String apiV2key;
    /**
     * 回调地址
     */
    private String notifyUrl;

    /**
     * 交易类型
     */
    private String tradeType;


    @Bean
    public WxPayService wxPayService() {
        WxPayServiceImpl wxPayService = new WxPayServiceImpl();
        WxPayConfig payConfig = new WxPayConfig();
        payConfig.setAppId(appid);
        payConfig.setMchId(merchantId);
        payConfig.setMchKey(apiV2key);
        payConfig.setNotifyUrl(notifyUrl);
        wxPayService.setConfig(payConfig);
        return wxPayService;
    }


}

